﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Application.Dto
{
    public class SSUpdateDto
    {
        public int SsdId { get; set; }

        /// <summary>
        /// 薪酬标准单编号，用于唯一标识不同的薪酬标准单，方便在系统内进行查询、关联以及相关业务操作，类型为字符串（可根据实际编号格式调整具体类型）。
        /// </summary>
        public string StandardId { get; set; }

        /// <summary>
        /// 薪酬标准单名称，直观展示该薪酬标准单的具体称呼，便于用户识别和理解，类型为字符串。
        /// </summary>
        public string StandardName { get; set; }

        /// <summary>
        /// 制定者名字，记录创建该薪酬标准单的人员姓名，类型为字符串。
        /// </summary>
        public string Designer { get; set; }

        /// <summary>
        /// 复核人，记录对该薪酬标准单进行复核操作的人员姓名，类型为字符串。
        /// </summary>
        public string Checker { get; set; }

        /// <summary>
        /// 复核时间，记录薪酬标准单复核操作完成的时间，类型为DateTime。
        /// </summary>
        public DateTime CheckTime { get; set; }

        /// <summary>
        /// 薪酬总额，记录该薪酬标准单所涵盖的薪酬总金额，类型为 decimal（用于精确的金额计算）。
        /// </summary>
        public decimal SalarySum { get; set; }

        /// <summary>
        /// 是否经过复核，用于标记该薪酬标准单当前是否已经完成复核流程，类型为布尔值（true表示已复核，false表示未复核）。
        /// </summary>
        public string CheckStatus { get; set; }

        /// <summary>
        /// 更改状态，用于描述该薪酬标准单当前是否处于被修改或其他特殊状态，类型为字符串（可自定义一些状态值，如"正常"、"修改中"等）。
        /// </summary>
        public string? ChangeStatus { get; set; }

        /// <summary>
        /// 复核意见，记录在复核薪酬标准单过程中提出的意见和建议，类型为字符串。
        /// </summary>
        public string? CheckComment { get; set; }

        /// <summary>
        /// 登记人，记录将该薪酬标准单信息录入系统的人员姓名，类型为字符串。
        /// </summary>
        public string Register { get; set; }

        /// <summary>
        /// 登记时间，记录薪酬标准单在系统中首次登记的时间，类型为DateTime。
        /// </summary>
        public DateTime RegistTime { get; set; }

        /// <summary>
        /// 备注，用于添加关于薪酬标准单的其他额外说明或特殊情况记录，类型为字符串。
        /// </summary>
        public string? Remark { get; set; }

    }
}
